{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "6822d447-a59e-46ad-9fe7-3d520fdf51fd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\">Model: \"sequential_2\"</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1mModel: \"sequential_2\"\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓\n",
       "┃<span style=\"font-weight: bold\"> Layer (type)                         </span>┃<span style=\"font-weight: bold\"> Output Shape                </span>┃<span style=\"font-weight: bold\">         Param # </span>┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩\n",
       "│ embedding_2 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Embedding</span>)              │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">6</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">5</span>)                │              <span style=\"color: #00af00; text-decoration-color: #00af00\">50</span> │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ lstm_2 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">LSTM</span>)                        │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">128</span>)                 │          <span style=\"color: #00af00; text-decoration-color: #00af00\">68,608</span> │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dense_2 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dense</span>)                      │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">5</span>)                   │             <span style=\"color: #00af00; text-decoration-color: #00af00\">645</span> │\n",
       "└──────────────────────────────────────┴─────────────────────────────┴─────────────────┘\n",
       "</pre>\n"
      ],
      "text/plain": [
       "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓\n",
       "┃\u001b[1m \u001b[0m\u001b[1mLayer (type)                        \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape               \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m        Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩\n",
       "│ embedding_2 (\u001b[38;5;33mEmbedding\u001b[0m)              │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m6\u001b[0m, \u001b[38;5;34m5\u001b[0m)                │              \u001b[38;5;34m50\u001b[0m │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ lstm_2 (\u001b[38;5;33mLSTM\u001b[0m)                        │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m128\u001b[0m)                 │          \u001b[38;5;34m68,608\u001b[0m │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dense_2 (\u001b[38;5;33mDense\u001b[0m)                      │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m5\u001b[0m)                   │             \u001b[38;5;34m645\u001b[0m │\n",
       "└──────────────────────────────────────┴─────────────────────────────┴─────────────────┘\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Total params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">69,303</span> (270.71 KB)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m69,303\u001b[0m (270.71 KB)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">69,303</span> (270.71 KB)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m69,303\u001b[0m (270.71 KB)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Non-trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> (0.00 B)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import tensorflow as tf\n",
    "model=tf.keras.Sequential()\n",
    "model.add(tf.keras.layers.Embedding(10,5,input_length=6,input_shape=(6,)))\n",
    "model.add(tf.keras.layers.LSTM(128))\n",
    "model.add(tf.keras.layers.Dense(5,activation='softmax'))\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "9ca864ce-a3f0-4716-b9be-e41d841110e2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x_train.shape= (25000,)\n",
      "y_train.shape= (25000,)\n",
      "x_test.shape= (25000,)\n",
      "y_test.shape= (25000,)\n"
     ]
    }
   ],
   "source": [
    "import tensorflow as tf\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "imdb=tf.keras.datasets.imdb\n",
    "(x_train,y_train),(x_test,y_test)=imdb.load_data(num_words=4000)\n",
    "print(\"x_train.shape=\",x_train.shape)\n",
    "print(\"y_train.shape=\",y_train.shape)\n",
    "print(\"x_test.shape=\",x_test.shape)\n",
    "print(\"y_test.shape=\",y_test.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "bd1a165b-4fa1-447c-b722-d234609e5da8",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "序列填充前的第一个元素:\n",
      " [1, 14, 22, 16, 43, 530, 973, 1622, 1385, 65, 458, 2, 66, 3941, 4, 173, 36, 256, 5, 25, 100, 43, 838, 112, 50, 670, 2, 9, 35, 480, 284, 5, 150, 4, 172, 112, 167, 2, 336, 385, 39, 4, 172, 2, 1111, 17, 546, 38, 13, 447, 4, 192, 50, 16, 6, 147, 2025, 19, 14, 22, 4, 1920, 2, 469, 4, 22, 71, 87, 12, 16, 43, 530, 38, 76, 15, 13, 1247, 4, 22, 17, 515, 17, 12, 16, 626, 18, 2, 5, 62, 386, 12, 8, 316, 8, 106, 5, 4, 2223, 2, 16, 480, 66, 3785, 33, 4, 130, 12, 16, 38, 619, 5, 25, 124, 51, 36, 135, 48, 25, 1415, 33, 6, 22, 12, 215, 28, 77, 52, 5, 14, 407, 16, 82, 2, 8, 4, 107, 117, 2, 15, 256, 4, 2, 7, 3766, 5, 723, 36, 71, 43, 530, 476, 26, 400, 317, 46, 7, 4, 2, 1029, 13, 104, 88, 4, 381, 15, 297, 98, 32, 2071, 56, 26, 141, 6, 194, 2, 18, 4, 226, 22, 21, 134, 476, 26, 480, 5, 144, 30, 2, 18, 51, 36, 28, 224, 92, 25, 104, 4, 226, 65, 16, 38, 1334, 88, 12, 16, 283, 5, 16, 2, 113, 103, 32, 15, 16, 2, 19, 178, 32]\n",
      "序列填充后第一个元素:\n",
      " [   1   14   22   16   43  530  973 1622 1385   65  458    2   66 3941\n",
      "    4  173   36  256    5   25  100   43  838  112   50  670    2    9\n",
      "   35  480  284    5  150    4  172  112  167    2  336  385   39    4\n",
      "  172    2 1111   17  546   38   13  447    4  192   50   16    6  147\n",
      " 2025   19   14   22    4 1920    2  469    4   22   71   87   12   16\n",
      "   43  530   38   76   15   13 1247    4   22   17  515   17   12   16\n",
      "  626   18    2    5   62  386   12    8  316    8  106    5    4 2223\n",
      "    2   16  480   66 3785   33    4  130   12   16   38  619    5   25\n",
      "  124   51   36  135   48   25 1415   33    6   22   12  215   28   77\n",
      "   52    5   14  407   16   82    2    8    4  107  117    2   15  256\n",
      "    4    2    7 3766    5  723   36   71   43  530  476   26  400  317\n",
      "   46    7    4    2 1029   13  104   88    4  381   15  297   98   32\n",
      " 2071   56   26  141    6  194    2   18    4  226   22   21  134  476\n",
      "   26  480    5  144   30    2   18   51   36   28  224   92   25  104\n",
      "    4  226   65   16   38 1334   88   12   16  283    5   16    2  113\n",
      "  103   32   15   16    2   19  178   32    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0]\n"
     ]
    }
   ],
   "source": [
    "print(\"序列填充前的第一个元素:\\n\",x_train[0])\n",
    "x_train=tf.keras.preprocessing.sequence.pad_sequences(x_train,padding='post',maxlen=400,truncating='post')\n",
    "x_test=tf.keras.preprocessing.sequence.pad_sequences(x_test,padding='post',maxlen=400,truncating='post')\n",
    "print(\"序列填充后第一个元素:\\n\",x_train[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "a0669cee-7717-4ecc-83e0-bddf0f4416b3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\">Model: \"sequential_3\"</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1mModel: \"sequential_3\"\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓\n",
       "┃<span style=\"font-weight: bold\"> Layer (type)                         </span>┃<span style=\"font-weight: bold\"> Output Shape                </span>┃<span style=\"font-weight: bold\">         Param # </span>┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩\n",
       "│ embedding_3 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Embedding</span>)              │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">400</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">32</span>)             │         <span style=\"color: #00af00; text-decoration-color: #00af00\">128,000</span> │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dropout_2 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dropout</span>)                  │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">400</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">32</span>)             │               <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ lstm_3 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">LSTM</span>)                        │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">32</span>)                  │           <span style=\"color: #00af00; text-decoration-color: #00af00\">8,320</span> │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dropout_3 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dropout</span>)                  │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">32</span>)                  │               <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dense_3 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dense</span>)                      │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">1</span>)                   │              <span style=\"color: #00af00; text-decoration-color: #00af00\">33</span> │\n",
       "└──────────────────────────────────────┴─────────────────────────────┴─────────────────┘\n",
       "</pre>\n"
      ],
      "text/plain": [
       "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓\n",
       "┃\u001b[1m \u001b[0m\u001b[1mLayer (type)                        \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape               \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m        Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩\n",
       "│ embedding_3 (\u001b[38;5;33mEmbedding\u001b[0m)              │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m400\u001b[0m, \u001b[38;5;34m32\u001b[0m)             │         \u001b[38;5;34m128,000\u001b[0m │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dropout_2 (\u001b[38;5;33mDropout\u001b[0m)                  │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m400\u001b[0m, \u001b[38;5;34m32\u001b[0m)             │               \u001b[38;5;34m0\u001b[0m │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ lstm_3 (\u001b[38;5;33mLSTM\u001b[0m)                        │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m)                  │           \u001b[38;5;34m8,320\u001b[0m │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dropout_3 (\u001b[38;5;33mDropout\u001b[0m)                  │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m)                  │               \u001b[38;5;34m0\u001b[0m │\n",
       "├──────────────────────────────────────┼─────────────────────────────┼─────────────────┤\n",
       "│ dense_3 (\u001b[38;5;33mDense\u001b[0m)                      │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m1\u001b[0m)                   │              \u001b[38;5;34m33\u001b[0m │\n",
       "└──────────────────────────────────────┴─────────────────────────────┴─────────────────┘\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Total params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">136,353</span> (532.63 KB)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m136,353\u001b[0m (532.63 KB)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">136,353</span> (532.63 KB)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m136,353\u001b[0m (532.63 KB)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Non-trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> (0.00 B)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model=tf.keras.models.Sequential()\n",
    "model.add(tf.keras.layers.Embedding(output_dim=32,input_dim=4000,input_length=400,input_shape=(400,)))\n",
    "model.add(tf.keras.layers.Dropout(0.3))\n",
    "model.add(tf.keras.layers.LSTM(32))\n",
    "model.add(tf.keras.layers.Dropout(0.3))\n",
    "model.add(tf.keras.layers.Dense(1,activation='sigmoid'))\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "d27ee207-a26d-46cf-9f94-a2a2d0093ebf",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m14s\u001b[0m 41ms/step - accuracy: 0.5114 - loss: 0.6929 - val_accuracy: 0.5008 - val_loss: 0.6950\n",
      "Epoch 2/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5093 - loss: 0.6925 - val_accuracy: 0.5012 - val_loss: 0.6939\n",
      "Epoch 3/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5071 - loss: 0.6920 - val_accuracy: 0.5024 - val_loss: 0.6937\n",
      "Epoch 4/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5145 - loss: 0.6912 - val_accuracy: 0.5030 - val_loss: 0.6939\n",
      "Epoch 5/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5159 - loss: 0.6904 - val_accuracy: 0.5060 - val_loss: 0.6930\n",
      "Epoch 6/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 42ms/step - accuracy: 0.5131 - loss: 0.6893 - val_accuracy: 0.4984 - val_loss: 0.6983\n",
      "Epoch 7/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5232 - loss: 0.6866 - val_accuracy: 0.5110 - val_loss: 0.6923\n",
      "Epoch 8/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5222 - loss: 0.6850 - val_accuracy: 0.5046 - val_loss: 0.6928\n",
      "Epoch 9/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 42ms/step - accuracy: 0.5379 - loss: 0.6838 - val_accuracy: 0.5208 - val_loss: 0.6887\n",
      "Epoch 10/10\n",
      "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m13s\u001b[0m 41ms/step - accuracy: 0.5513 - loss: 0.6838 - val_accuracy: 0.5362 - val_loss: 0.6899\n",
      "391/391 - 6s - 15ms/step - accuracy: 0.5292 - loss: 0.6935\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "[0.6935017704963684, 0.5291600227355957]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.compile(optimizer='rmsprop',loss='binary_crossentropy',metrics=['accuracy'])\n",
    "history=model.fit(x_train,y_train,batch_size=64,epochs=10,validation_split=0.2)\n",
    "model.evaluate(x_test,y_test,batch_size=64,verbose=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "e59bd8b0-1fc9-4367-b261-f764c2ec3411",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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7OwszuTR7+jPP//M8RwSkeVvt2XLFtG6dWtRsWJFUbFiRdGhQwdx4cKFAsXEXRAZU58TJzK7/0+bJnU0WsjPj948ExMhYmKkjqbICnL8lXw616xzsgA0Meb76+QyMjIgk8mwe/duNGvWDB4eHli9ejV+/PFHRSvY999/jzp16sDBwQF6enqYMGECRowYAd33ZpkryPMCwOzZsxEbG6tYHnFTAtNwenrA8OHAP/8AR44A7drRhI87d9IcIJ060YBcruOgpbp0Abp2pT/qxIna84d8+hSYMYMqXam5+JGenh78/f1x69Yt7N69G/v378fdu3exbds26OU0SU8e/P394enpiTlz5iAsLAxt2rRB586d8fDhwzwfd+vWLURHRyuWOnXqKO47deoUBgwYgD///BPnz59HjRo14O7ujidPnhTq9TLGVCcsjKasSksDBgygniesAOLjgXnz6PY33wBmZtLGo2aSJWBVqlSBrq4unj17prQ+JiYGFhYWOT7G0tISVlZWMMkymMXR0RFCCEXffTMzMxw8eBDv3r3DgwcPcPPmTRgbG8P2v4mSCvO8AKCvr48KFSooLYxpA5kM8PAA/vyTKiL160dVk44fpwnnXVyAn38GUlOljpQV2Pff04SVv/9OJa80WWQkMGYMTVq3YgUNVNy7V5JQ6tSpgz59+qBr166wsbEp1D5Wr16NUaNGYfTo0XB0dISPjw+sra2VxhbnxNzcHFWrVlUsWS8O7t69G+PGjUOTJk3g4OAAPz8/ZGRk4OTJk4WKkTGmGvfv03k1Pp6qD2/fTudVVgArV9JM1XZ2QJa6DaWFZB8XPT09uLi4ICgoSGl9UFBQtgme5dzc3PD06VPEx8cr1kVGRkJHRwfVq1dX2tbAwABWVlZIS0tDQEAAevToUejnZaykcHWl77x37lCjiZERXcUbNAioXZv6r2f592KarlYtGuQH0OTM795JG09OLl2iQREODsAPP9CMoa1bA4cPAxs2qDWU3r1747vvvsu2fsWKFdnmBstLYccSA4CTkxMsLS3RoUMH/Pnnn3lum5CQgNTU1FyLTgE8PpkxdXv1inqQPHsGNGwIHDhA18FYAURH04U4gCqYFLAHQomg6v6QeZGXg9+6dasIDw8Xnp6eoly5cuL+/ftCCCFmzZolhgwZotj+7du3onr16qJ3797ixo0b4vTp06JO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",
      "text/plain": [
       "<Figure size 1000x300 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss=history.history['loss']\n",
    "acc=history.history['accuracy']\n",
    "val_loss=history.history['val_loss']\n",
    "val_acc=history.history['val_accuracy']\n",
    "plt.figure(figsize=(10,3))\n",
    "plt.subplot(121)\n",
    "plt.plot(loss,color='b',label='train')\n",
    "plt.plot(val_loss,color='r',label='validate')\n",
    "plt.ylabel('loss')\n",
    "\n",
    "plt.legend()\n",
    "plt.subplot(122)\n",
    "plt.plot(acc,color='b',label='train')\n",
    "plt.plot(val_acc,color='r',label='validate')\n",
    "plt.ylabel('Accuracy')\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "be0ce850-ede2-47b6-b581-75ff40e041ac",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[1m9/9\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 21ms/step \n",
      "评论为: The ultimate story of friendship,of hope,and of life,and overcoming adversity.I understand why so many class this as the best film of all time,it isn't mine, dut Idet it. If you haven't seen it, or haven't seen it for some time,you need to watch it,it's amazing.\n",
      "预测结果为: 正面评论\n"
     ]
    }
   ],
   "source": [
    "dict={0:\"正面评论\",1:\"负面评论\"}\n",
    "def display_predict(text):\n",
    "    token=tf.keras.preprocessing.text.Tokenizer(num_words=4000)\n",
    "    token.fit_on_texts(text)\n",
    "    input_seq=token.texts_to_sequences(text)\n",
    "    test_seq=tf.keras.preprocessing.sequence.pad_sequences(input_seq,padding='post',maxlen=400,truncating='post')\n",
    "    pred=model.predict(test_seq)\n",
    "    print(\"评论为:\",text)\n",
    "    print(\"预测结果为:\",dict[np.argmax(pred)])\n",
    "test_text=\"The ultimate story of friendship,of hope,and of life,and overcoming adversity.I understand why so many class this as the best film of all time,it isn't mine, dut Idet it. If you haven't seen it, or haven't seen it for some time,you need to watch it,it's amazing.\"\n",
    "display_predict(test_text)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "73928cf0-a9f5-41c8-b158-d69028e3e711",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.13.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
